EMP 文件实用程序
在此部分:
关于 EMP 文件实用程序
Environment Manager 个性化文件实用程序(EMP 文件实用程序)使用命令行界面从 Environment Manager 个性化数据库导入和导出文件。在使用该工具之前,必须定义数据库的有效连接字符串。连接字符串中指定的用户必须拥有在数据库中读取、写入和运行存储过程的权限。最简单的权限是“dbowner”。
该实用程序可直接访问数据库,无需使用个性化服务器。
这是一种低级工具,可使用命令行界面中的脚本元素来输入命令和设置参数。使用此工具前,最好先掌握命令行实用程序操作方法和脚本处理方式。
要求
该实用程序可直接访问数据库,因此需要拥有数据库表访问权限的用户提供用户名和密码。使用个性化服务帐户将不起作用。
支持的软件版本
EMP 文件实用程序不再支持旧版本的 Environment Manager。8.5 实用程序只能用于 8.5 版的软件。
Windows 设置组支持
该文件实用程序可用于从父 Windows 设置配置文件所含的 Windows 设置组中导入和导出文件。为此,应用程序名称应替换为以 "wsg:" 为前缀的 Windows 设置组名称。例如,要从名为“外观和个性化”的 Windows 设置组导入和导出文件,应指定 wsg:外观和个性化作为应用程序名称。
使用场景
典型场景是特定用户或组要求通过批处理而不是通过用户界面更新某个文件。EMP 文件实用程序还可以与 Environment Manager 策略配置结合使用,以便直接操作数据库中的用户设置。
从数据库导出文件
数据库的有效连接字符串必须在环境变量 EMPFileUtilConnectionString
中定义,该变量位于运行 EMPFileUtil 的相同命令窗口中。此过程介绍如何设置环境变量,而后运行该实用程序。
- 选择开始 > AppSense > Environment Manager > 工具 > EMP 文件实用程序。
-
在命令行上,输入
SET EMPFileUtilConnectionString=<connection string>
例如,
SET EMPFileUtilConnectionString=Data Source=(local);Initial Catalog=PersonalizationServer;Integrated Security=SSPI
-
按 Enter。
此环境变量也可以在“系统属性”中进行全局设置。对于 Windows Vista 及更高版本,右键单击“开始”菜单上的计算机,然后选择属性。选择高级系统设置,单击高级选项卡,然后选择环境变量按钮。
-
在命令行中,按以下格式输入命令:
EMPFileUtil EXPORT
<username> <usergroup> <application> <databaseroot> <outputfolder>其中:
参数 定义 <username> 以域为前缀的用户名,例如 Ivanti\smithj <usergroup> 用户的个性化组,例如“默认用户” <application> 应用程序或组的名称(不是可执行文件的名称,尽管可能相同,例如“记事本”),或者以 "wsg:" 为前缀的 Windows 设置组的名称。 如果名称包含空格,则整个参数(包括 wsg:)必须包含在引号中。以下保留的应用程序名称可被识别:
- 证书(适用于旧证书配置文件)
- 旧证书
- Windows 设置
- Windows 个性化(适用于 Windows 设置配置文件)
- 旧会话数据
<databaseroot> 要以“原始”格式导出的文件树的根,例如 {CSIDL_APPDATA}。 此处可使用值 *(星号)来导出应用程序组中的所有文件。这也会导出注册表文件 "settings.fbr"(或者 Windows 设置组情况下的 "registry.fbr")。这些文件包含用户的 SID,因此仅应重新导入同一用户。
注意:在这种情况下,可能更适合使用 EMP 注册表实用程序来转移注册表设置。
有关详细信息,请参阅 EMP 注册表实用程序。
<outputfolder> 要导出文件的文件夹。此处构建的目录结构与数据库中的目录结构相匹配。可以使用相对路径,例如用一个点来表示当前路径。 系统不会覆盖现有文件,但会根据需要创建文件夹。
参数 定义 如果参数包含嵌入空格,则必须用引号括起来。
-
按 Enter 导出所有相关文件。
将文件导入数据库
选择开始 > Ivanti > Environment Manager > 工具 > EMP 文件实用程序。
在命令行上,按以下格式输入命令:
EMPFileUtil IMPORT
<importdescription>.xml
XML 文件包含要加载到数据库中的用户、应用程序组和文件的相关信息。
每个用户可以有一个 XML 文件,或者同一文件中可以有很多用户。

<?xml version="1.0" encoding="utf-8"?>
<Users>
<User
Name="ivanti\smithj"
RetrieveSID="yes" >
<PersonalizationGroup
Name="Default Users">
<Application
Name="Group1"
Type="group"
DeleteExisting="yes"
RootFolder="c:\Dev\TestData\Group1" />
<Application
Name="Notepad"
Type="single"
DeleteExisting="yes"
RootFolder="c:\TestImport\Notepad" />
</PersonalizationGroup>
</User>
<User
Name="ivanti\jonesa"
RetrieveSID="no"
Sid="S-1-5-21-203209604-3446334822-3473717970-1002" >
<PersonalizationGroup
Name="Default Users">
<Application
Name="Office"
Type="group"
DeleteExisting="yes"
RootFolder="c:\TestImport\Office" />
<Application
Name="Notepad"
Type="single"
DeleteExisting="yes"
RootFolder="c:\TestImport\Notepad" />
</PersonalizationGroup>
</User>
</Users>
在顶级 <Users>
元素下可以有一个或多个 <User>
元素。如果需要,每个 User 元素可以为用户指定多个个性化组(用户组)。
可以在 <PersonalizationGroup>
下指定多个应用程序。每个应用程序都有一个文件夹,实用程序可以在其中找到要读取的文件 - RootFolder
特性。
元素 | 特性 | 含义 |
用户 | 名称 | 采用“域\用户”格式的用户名。如果已指定 SID,则不需要此用户。用户不需要在之前登录到个性化服务器。 |
RetrieveSID | 值为 "yes" 或 "no"。如果为 "yes",EMPFileUtil 将检查 AD(如果在域中)或本地计算机(如果不在域中)以查找用户的 SID。 | |
SID | 如果已指定 RetrieveSID ="no",则需要用户的 Sid。 | |
PersonalizationGroup | 名称 | 要加载用户和应用程序的组的名称。该组必须已存在。请注意,如果成员身份规则未将用户置于组中,则您需要创建冗余数据。 |
应用程序 | 名称 | 以 "wsg:" 开头的应用程序、应用程序组或 Windows 设置组的名称。必须将组分配给个性化组,否则 EMPFileUtil 将报告错误。可以使用保留的应用程序名称(如上面的导出内容所列),但请注意,导入旧配置文件只会影响旧客户端。 |
类型 | "Single" 适用于应用程序,而 "group" 适用于应用程序组。 | |
DeleteExisting | "Yes" 或 "no"。如果应用程序已存在且包含用户/组的数据,则指定 "yes" 将导致 EMPFileUtil 删除所有旧数据。如果为 "no",则将添加新文件。如果新文件与旧文件具有相同的名称和路径,则会生成重复键错误并停止处理。 | |
要导入的文件所在的路径。根必须包含 {CSIDL_xxx} 形式的子目录,而不包含任何文件。在根之下,任何内容都允许存在,并将加载到数据库中。无法加载注册表文件 - 必须改用 EMPRegUtil 来完成此操作。 |
个性化分析
导入 XML 文件后,您也可以使用个性化分析深入了解用户设置。
有关个性化分析的详细信息,请参阅 中的个性化分析。